פסיקות מערכות ובקרים. Why are interrupts important. The INT and IRET instructions. Saul Coval Computer Systems 1.

Size: px
Start display at page:

Download "פסיקות מערכות ובקרים. Why are interrupts important. The INT and IRET instructions. Saul Coval Computer Systems 1."

Transcription

1 PIC - /Jan/00 מנהל התקנים DMA Introduction to Systems Programming מבוא לתכנות מערכות Device Manager גישה יש ירה לז י כר ו ן פסיקות קלט פלט Input-Output Devices, Controllers, and I/O Architectures ניהול ציוד ה יקפי INTERRUPTS שא ול ק ו בל מערכ ו ת מחש ב י ם ארכיטקטורה של קלט/פלט, מערכות ובקרים שאול קובל מערכות - Computers - Interrupt Controller Saul Coval CPU M Interrupt M OpSys Keyboard controller Message to application Application OpSys Special memory location M Interrupt CPU Decides which app (window) was accessed sends a message to that window Adds letter M to Video RAM Adds letter M to RAM Tells OpSys to display M Why are interrupts important Interrupts let you use the operating system (run your programs, manage your files, access your peripherals etc.) Interrupts help peripherals talk to your microprocessor Interrupts help you measure time and control the timing of certain tasks in your microprocessors Slide Slide Interrupts from a pedagogical perspective By learning interrupts you learn important concepts such as: Concurrency: how your processor manages to service interrupts while your program doesn t know anything about them and how multiple interrupts are serviced at the same time Preemptability and priorities, how can a low prioritytask be preempted by a high-priority task Scheduling: how can we assure that both low and high-priority tasks get the service they deserve from the processor Slide The INT and IRET instructions Syntax: INT imm imm is an interrupt vector from 0 to INT does the following: Pushes flag register (pushf) Pushes return and Far jumps to [0000:(*imm)] Usually clears the interrupt flag disabling the interrupt system IRET is to INT what RET is to CALL Pops flag register Performs a far return Slide

2 PIC - /Jan/00 Things to notice The interrupt vector table is just a big permanently located jump table The values of the jump table are pointers to code provided by bios, hardware, the operating system or YOU! Interrupt service routines preserve the flags the state of the microprocessor before the INT should be completely unaltered by the ISR and your program must return to normal operation. Hardware interrupts Alert the processor of some hardware situation that needs the processor s attention A key has been pressed A timer has expired A network packet has arrived Same software calling protocol Additional level of complexity with the interrupt call not coming from your program code Can happen at any time during the execution of your program, invocations of ISRs for hardware interrupts are asynchronous Slide Slide The 0x interrupt interface It is not that simple 0x processor INT Request (INTR) INT Acknowledge (INTA) Data bus Device generates request signal Device supplies interrupt vector number on data bus Processor completes the execution of current instruction and executes ISR corresponding to the interrupt vector number on the data bus ISR upon completion acknowledges the interrupt by asserting the INTA signal Some device Slide What if we want to connect more than one devices to the processor? What happens if multiple devices generate multiple interrupts at the same time? We need a way to share the two interrupt lines among multiple devices Programmable Interrupt Controller The PIC operates as an arbiter for interrupts triggered by multiple devices One serves up to devices, but multiple chips can be cascaded to serve up to devices Slide 0 The PIC Interrupt vectors and the PIC PIC 0 INTR INTA INT# Interrupt outputs from peripheral devices 0x Master-Slave Configuration 0x Base vector is 0h Master INTR 0 IRQ0 IRQ IRQ IRQ IRQ IRQ IRQ Slave INTR 0 Base vector is h IRQ IRQ IRQ0 IRQ IRQ IRQ IRQ IRQ Slide Slide

3 PIC - /Jan/00 The PIC PIC is very complex to program, fortunately the BIOS does most of the work needed Programmed with the I/O address 0h-h (master) and 0A0h-0Ah (slave) I/O instructions yet to be discussed in reads from an I/O address out writes to an I/O address Consider them as two registers the status register and the interrupt mask register The PIC The mask register is addressed from h It lets you enable/disable specific hardware interrupts Counterintuitive: a 0 ENABLES an interrupt and a DISABLES the interrupt Never load a value immediately to the mask register Always read the previous value and use and/or instructions to set the new mask in al, h ; this one reads the value of the mask register and al, 0efh ; this zeroes out bit i.e. IRQ out h, al ; this actually disables the interrupt in IRQ Slide Slide The PIC When an interrupt occurs and the processor starts executing the ISR all further interrupts from the same device are blocked until the ISR issues an end of interrupt instruction mov al, 0h out 0h, al You must end exactly one interrupt! Not sending one will block all interrupts from the save device Sending two or more means that you might accidentally acknowledge the end of a pending interrupt! Two more registers track pending interrupts received at the PIC and interrupt priorities You must be careful when you re patching existing ISR s (because the end instruction sequence may already be included in the ISR) The PIC IRQ mapping Interrupt vectors through 0Fh map to IRQ0- IRQ Interrupt vectors 0h-h map to IRQ-IRQ Slide Slide Typical IRQ assignments IRQ 0: Timer (triggered./second) IRQ : Keyboard (keypress) IRQ : Slave PIC IRQ : Serial Ports (Modem, network) IRQ : Sound card IRQ : Floppy (read/write completed) IRQ : Real-time Clock IRQ : Mouse IRQ : Math Co-Processor IRQ : IDE Hard-Drive Controller Interrupt priority Lower interrupt vectors have higher priority Lower priority can t interrupt higher priority Higher priority can interrupt lower priority ISR for INT h is running Computer gets request from device attached to IRQ (INT h) INT h procedure must finish before IRQ device can be serviced ISR for INT h is running Computer gets request from Timer 0 IRQ0 (INT h) Code for INT h gets interrupted, ISR for timer runs immediately, INTh finishes afterwards Slide Slide

4 PIC - /Jan/00 Priority in the supports several priority schemes On PC s the uses the simplest form of fixed priorities Each IRQ has a fixed priority Lower IRQs has higher priority The timer interrupt (IRQ0) has lower priority than any other IRQ If you really need higher priority than the timer (e.g. connecting a nuclear reactor to your microprocessor) it is possible to use a NMI (non-maskable interrupt) NMI has the highest priority among all hardware interrupts and cannot be disabled by the program Interrupt enabling/disabling You can enable/disable all maskable hardware interrupts The CLI instruction disables all maskable hardware interrupts The STI instruction enables all maskable hardware interrupts Be very careful if you ever need to use them Many deadlock scenarios! Slide Slide 0 The ugly details ISRs for hardware interrupts clear the interrupt flag at the beginning to disable interrupts. They may include a STI instruction if they want to enable interrupts before they finish It s all about performance! Keeping interrupts blocked for long is a BAD IDEA ISRs for software interrupts do not disallow hardware interrupts automatically at the beginning. If an ISR for a software interrupt needs to do that it must issue a CLI instruction This is what most ISRs do Again for the sake of performance a STI instruction must be issued as soon as possible Note that when interrupts are enabled the priority rule applies The CLI works only for maskable hardware interrupts Code enclosed between CLI/SCI is often called a critical section, an uninterruptible piece of code Slide Is there a way out of this mess? In many critical section situations (e.g. patching the interrupt vector tables) DOS helps us ensure the required atomicity Convenient calls for Safely getting the value of the interrupt vector from the interrupt vector table Safely storing a new value to the interrupt vector table (patching the interrupt vector table) In all difficult situations always examine what if scenarios What if a hardware interrupt occurs at different points of our ISR? Identify the points that need to be protected and protect them with CLI/STI Slide Servicing a hardware interrupt Complete current instruction Preserve current context PUSHF Store flags to stack Clear Trap Flag (TF) & Interrupt Flag (IF) Store return address to stack PUSH, PUSH Identify Source Read PIC status register Determine which device (N) triggered the interrupt Activate ISR Use N to index vector table Read / from table Jump to instruction Execute ISR usually the handler immediately re-enables the interrupt system (to allow higher priority interrupts to occur) (STI instruction) process the interrupt Indicate End-Of-Interrupt (EOI) to PIC mov al, 0h out 0h, al Return (IRET) POP (Far Return) POP POPF (Restore Flags) Interrupt service routines Reasons for writing your own ISR s to override the default ISR for internal hardware interrupts (e.g., division by zero need not terminate the program) to chain your own ISR onto the default system ISR for a hardware device, so that both the system s actions and your own will occur on an interrupt (e.g., clocktick interrupt, measure elapsed time) to service interrupts not supported by the default device drivers (a new hardware device for which you may be writing a driver) to provide communication between a program that terminates and stays resident (TSR) and other application software (maintain your ISRs) Slide Slide

5 PIC - /Jan/00 Impact of interrupts on performance The frequency of occurrence and the latency of the ISR determine the impact of servicing interrupts to your program The latency of the ISR is non-negligible! You may not notice it but you may be interrupted several times while executing your program. The good thing is that you don t notice it! Always remember: When the processor starts executing an ISR there might be other ISRs executing already Your ISR may be interrupted by a higher-priority interrupt Many devices expect low latency from your ISR (imagine what happens if you hit a key in the keyboard and wait for a minute!) Even those devices with high latencies (e.g. the disk) are not allowed to block other activity in the processor for long Bottom line YOUR INTERRUPT SERVICE ROUTINES MUST BE SHORT AND ACHIEVE THEIR PURPOSE WITH THE MAXIMUM EFFICIENCY! NEVER BLOCK THE SYSTEM WITH YOUR ISRs Slide Interrupt Service Routines ISRs are meant to be short keep the time that interrupts are disabled and the total length of the service routine to an absolute minimum remember after interrupts are re-enabled (STI instruction), interrupts of the same or lower priority remain blocked if the interrupt was received through the A PIC ISRs can be interrupted ISRs must be in memory Option : Redefine interrupt only while your program is running the default ISR will be restored when the executing program terminates Option : Use DOS Terminate-and-Stay-Resident (TSR) command to load and leave program code permanently in memory Slide Interrupt Driven I/O Consider an I/O operation, where the CPU constantly tests a port (e.g., keyboard) to see if data is available CPU polls the port if it has data available or can accept data Polled I/O is inherently inefficient Wastes CPU cycles until event occurs Analogy: Checking your watch every 0 seconds until your popcorn is done, or standing at the door until someone comes by Solution is to provide interrupt driven I/O Perform regular work until an event occurs Process event when it happens, then resume normal activities Analogy: Alarm clock, doorbell, telephone ring Slide VCC to CPU INTRQ from CPU INTA 0 Data Bus Master D0 IR0 D IR 0 D IR D IR D IR D IR D IR D IR A0 WR SP/EN CAS0 INT CAS INTA CAS A 0 Slave D0 D D D D D D D A0 WR SP/EN INT INTA A IR0 IR IR IR IR IR IR IR CAS0 CAS CAS 0 0 Master D0 D D D D D D D A0 WR SP/EN INT INTA A IR0 IR IR IR IR IR IR IR CAS0 CAS CAS 0 Address Bus Slide Slide 0

6 PIC - /Jan/00 0 Slave D0 D D D D D D D A0 WR SP/EN INT INTA A IR0 IR IR IR IR IR IR IR CAS0 CAS CAS 0 I/O Addressing Mode On CPU Chip IRQ IRQ IRQ Parallel Port Card Address Bus BC F F Data Bus Serial Port Card UART Serial Port Card UART Slide Slide Interrupts and our everyday lives We will spend at least two lectures to explain how to measure and track time in your microprocessor and you will be wondering why don t we just look at our watches But we will also learn that looking at your watch all the time is not a good thing to do, especially if you re a microprocessor We all have priorities E.g. you do your ECE homework and your girlfriend/boyfriend calls, there s a high-priority interrupt While you talk to your girlfriend/boyfriend you get another incoming call from your mom, there s an interrupt that you decide how to handle High priority: put the girlfriend/boyfriend on hold Low priority: put your mom on hold or don t even bother to switch to the other line Slide Interrupts seriously defined Triggers that cause the CPU to perform various tasks on demand Three types: Software interrupts initiated by the INT instruction in your program Hardware interrupts initiated by peripheral hardware Exceptions occur in response to error states in the processor or during debugging (trace, breakpoints etc.) Regardless of source, they are handled the same Each interrupt has a unique interrupt number from 0 to. These are called interrupt vectors. For each interrupt vector, there is an entry in the interrupt vector table. The interrupt vector table is simply a jump table containing Slide segment:offset addresses of procedures to handle each interrupt Interrupt vectors The first 0 bytes of memory (addresses FF) always contain the interrupt vector table. Always. Never anything else. Each of the vectors requires four Memory address (hex) bytes two for segment, two for offset 00FC * x INT INT x INT INT INT 0 Software interrupts Essentially function calls using a different instruction to do the calling and different conventions Software interrupts give you access to built-in code in the BIOS, the operating system, or peripheral devices Software interrupts are triggered with the INT instruction Slide Slide

7 PIC - /Jan/00 U 0 WR WR A0 A A D0 D D D D D D D ADS RESET XTAL/CLK XTAL RCLK 0 OUT OUT INT TXD RTS DTR RXD DCD DSR CTS RI OUT DDIS NC BAUDOUT Slide Slide End-to to-end Modem-based DC PROCESSES PROTOCOLS AND STANDAS Serial transmission standards Computer to Modem Character encoding Serial transmission ASCII, EBCDIC, UNICODE, ISO0 Physical interfaces vs. transmission protocols, RS-, RS, RS-, RS-, RS-, RS-0, V. 0 0 PC Parallel transmission Physical interfaces vs. transmission protocols Centronics interface, DB- interface Pin Number Signal Designation Pin Number Signal Designation Pin Number Signal Designation Within the Modem Serial/parallel conversion Data transmission Modulation/Demodulation Universal Asynchronous Receiver/Transmitter (UART) Digital vs. analog transmission Carrier wave characteristics amplitude, frequency, phase Protective ground Transmit data Receive data Request to send Secondary transmit data Transmit clock (DCE) Secondary receive data Receiver clock Carrier detect Receive data Transmit data Data terminal ready Modem Modulation techniques Amplitude modulation, frequency shift keying, phase shift keying, quadrature amplitude modulation Clear to send Data set ready Receiver dibit clock Secondary request to send Protective ground Data set ready Digital encoding and transmission Manchester encoding, NRZ-L, BZ synchronous transmission, asynchronous transmission Signal ground Carrier detect 0 Data terminal ready Signal quality detector Request to send Clear to send Modem to Phone Services RJ- phone jack Phone network Phone service transmission Phone services alternatives Two-wire vs. Four-wire, full-duplex vs. half-duplex, echo cancellation Analog vs. digittal services, dial-up vs. leased line services, bandwidth differentiation of services 0 Positive DC test voltage Negative DC test voltage unassigned Ring indicator Data signal rate selector Transmit clock (DTE) Ring indicator RJ- phone jack Secondary carrier detect Busy Modem PC Secondary clear to send Slide Slide 0 Pin Signa l CD TD DTR SG DSR RTS CTS RI Description Carrier Detect Receive Data Transmit Data Data Terminal Ready Signal Ground Data Set Ready Request to Send Clear to Send Ring Indicator I/O In In Out Out - In Out In In transmitting modem PSTN Error check Calculated calculated error check based on and actual actual data data transmitted GOLDMAN: DATACOMM FIG. 0-0 receiving modem Error check Recalculated recalculated error check based on compared to received transmitted error data check Slide Slide

8 PIC - /Jan/00 Serial Port Resources I/O addresses and IRQ Com Port I/O Address IRQ COM F-FF COM F-FF COM E-EF COM E-EF Slide Slide Slide Slide Slide Slide

9 PIC - /Jan/00 Interrupts Hardware interrupts Defined by CPU Defined by board-level architecture Software interrupts Convenient mechanism to call Operating System defined by software Exceptions in response to a condition encountered during execution of an instruction Slide Slide 0 Slide Slide 0000: : : : : : : :000 Offset Segment Offset Segment IVT Format Interrupt 0 Interrupt LSB MSB LSB MSB Memory Address (hex) ISR address Interrupt Function Pointer Given a Vector, where is the ISR address stored in memory? 00FC INT * x INT x 0000 INT 0000 INT 0000:0fc 0000:0fd 0000:0fe 0000:0ff Offset Segment Interrupt Example: int h Offset = ( ) = = 00dh INT 0 Slide Slide

10 PIC - /Jan/00 Interrupt Vector Assignments Type Function Comment 0 Divide Error Processor - zero or overflow Single Step (DEBUG) Processor - TF= Nonmaskable Interrupt Pin Processor - NMI Signal Breakpoint Processor - Similar to Sing Step Arithmetic Overflow Processor - into Print Screen Key BIOS - Key Depressed Invalid Opcode Processor - Invalid Opcode Coprocessor Not Present Processor - no FPU Time Signal BIOS - From RT Chip (AT - IRQ0) Keyboard Service BIOS - Gen Service (AT - IRQ) A - F Originally Bus Ops (IBM PC) BIOS - (AT - IRQ-) 0 Video Service Request BIOS - Accesses Video Driver Equipment Check BIOS - Diagnostic Memory Size BIOS - DOS Memory Disk Service Request BIOS - Accesses Disk Driver Serial Port Service Request BIOS - Accesses Serial Port Drvr Miscellaneous BIOS - Cassette, etc. Keyboard Service Request BIOS - Accesses KB Driver Interrupt Vector Assignments (cont) Type Function Comment Parallel Port LPT Service BIOS - Printer Driver ROM BASIC BIOS - BASIC Interpreter in ROM Reboot BIOS - Bootstrap A Clock Service BIOS - Time of Day from BIOS B Control-Break Handler BIOS - Keyboard Break C User Timer Service BIOS - Timer Tick D Pointer to Video Parm Table BIOS - Video Initialization E Pointer to Disk Parm Table BIOS - Disk Subsystem Init. F Pointer to Graphics Fonts BIOS - CGA Graphics Fonts 0 Program Terminate DOS - Clear Memory, etc. Function Call DOS - Transfer Control Terminate Address DOS - program Terminate handler Control-C Handler DOS - For OS Use Fatal Error Handler DOS - Critical Error Absolute Disk Read DOS - Disk Read Absolute Disk Write DOS - Disk Write Terminate DOS - TSR Usage Idle Signal DOS - Idle F Print Spool DOS - Cassette, etc. 0- Hardware Interrupts in AT Bios DOS - (AT - IRQs -) Slide Slide IBM-AT ( AT IRQ Definitions AT (Advanced Technology) - Intel 0) Name Interrupt Vector Priority Description NMI 0 Memory Parity Error IRQ0 0 Timer (Intel Chip ms intervals) IRQ 0 Keyboard IRQ 0A PIC Slave or EGA/VGA Vert. Retrace IRQ 0B Serial Port (COM or COM) IRQ 0C Serial Port (COM or COM) IRQ 0D Fixed Disk or LPT Request IRQ 0E Floppy Disk Driver IRQ 0F LPT Request IRQ 0 CMOS Real-Time Clock (RT Chip) IRQ Re-directed to IRQ IRQ0 RESERVED IRQ RESERVED IRQ Mouse or other IRQ 0 Math Coprocessor (NPX) IRQ Hard Disk IRQ RESERVED Software Interrupts BIOS Calls Keyboard -- INT H Video I/O -- INT 0H Serial I/O -- INT H Printer I/O -- INT H Time of day -- INT AH Timer tick -- INT CH DOS Calls Function request -- INT H Slide Slide Offset Address Type No. Interrupt Processing SP L H L H Status L Status H Interrupt Vector Table C C C C C 0 0 A B C 0 Division by zero Single Stepping NMI Interrupt -byte INT (opcode = CC) Signed overflow Print Screen Video I/O Equipment Check Memory Size Diskette I/O Serial Communication I/O Cassette I/O Keyboard I/O Printer I/O Cassette BASIC Bootstrap Time of Day Keyboard Break Timer Tick Program Terminate Function Request Terminate Address Ctrl-Break Exit Address BIOS DOS Slide F FE FC FF Slide 0 0

11 PIC - /Jan/00 Interrupt service routines end with an IRET instruction that pops the following values off the stack. SP L H L H Status L Status H Interrupt Vector Table Offset address C 00 0 Type number 0 Division by zero Single Stepping NMI Interrupt -Byte INT (opcode = CC) Signed overflow (INTO) Print screen Slide Slide The Status Register Time of Day Interrupt: INT AH O D I T S Z - A - P - C Overflow Direction Interrupt enable Trap Sign Zero Parity Auxiliary Carry Carry AH = 0 AH = Read the -bit counter clock setting Output: CX = high word of count DX = low word of count AL = 0 if count has not exceeded hours since last read = if hours has passed Set the -bit counter clock Input: CX = high word of count DX = low word of count Slide Slide Hardware Interrupts Nonmaskable Interrupt, NMI ) the status register, code segment register (), and instruction pointer () are pushed on the stack (see Figure.). ) the program jumps to : where the instruction pointer is stored in locations 0000: :000 and the code segment is stored in locations 0000:000A 0000:000B. Thus a non-maskable interrupt is a Type interrupt. (see Figure. in Chapter ). SP L H Table. PC Hardware Interrupts Interrupt Interrupt Vector Name Type No. Hex Offset Address 0 Timer Tick Keyboard A Unused B C Reserved for COM Serial I/O C 0 Reserved for COM Serial I/O D Unused E Disk I/O F C Reserved for Printer L H Status L Status H Slide Slide

12 PIC - /Jan/00 Interrupt Vector Table RESET 0 0C A Keyboard I/O Printer I/O Cassette BASIC Bootstrap Time of Day Set Status,, DS, SS, and ES to 0000H Set to FFFFh Execution begins at FFFF:0000 = FFFF0 (on Pentium, execution begins in real mode at FFFFFFF0) 0C B Keyboard Break 00 C Timer Tick Slide Slide Table. PC Hardware Interrupts Interrupt Interrupt Vector Hex Name Type No. Offset Address 0 Timer Tick Keyboard A Unused B C Reserved for COM Serial I/O C 0 Reserved for COM Serial I/O D Unused E Disk I/O F C Reserved for Printer Any Questions Slide Slide 0 Any Questions Any Questions Slide Slide

8086 Interrupts and Interrupt Responses:

8086 Interrupts and Interrupt Responses: UNIT-III PART -A INTERRUPTS AND PROGRAMMABLE INTERRUPT CONTROLLERS Contents at a glance: 8086 Interrupts and Interrupt Responses Introduction to DOS and BIOS interrupts 8259A Priority Interrupt Controller

More information

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 09, SPRING 2013

CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 09, SPRING 2013 CMSC 313 COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE PROGRAMMING LECTURE 09, SPRING 2013 TOPICS TODAY I/O Architectures Interrupts Exceptions FETCH EXECUTE CYCLE 1.7 The von Neumann Model This is a general

More information

The Purpose of Interrupt

The Purpose of Interrupt Interrupts 3 Introduction In this chapter, the coverage of basic I/O and programmable peripheral interfaces is expanded by examining a technique called interrupt-processed I/O. An interrupt is a hardware-initiated

More information

Chapter 12: INTERRUPTS

Chapter 12: INTERRUPTS Chapter 12: INTERRUPTS 12 1 BASIC INTERRUPT PROCESSING This section discusses the function of an interrupt in a microprocessor-based system. Structure and features of interrupts available to Intel microprocessors.

More information

These three counters can be programmed for either binary or BCD count.

These three counters can be programmed for either binary or BCD count. S5 KTU 1 PROGRAMMABLE TIMER 8254/8253 The Intel 8253 and 8254 are Programmable Interval Timers (PTIs) designed for microprocessors to perform timing and counting functions using three 16-bit registers.

More information

PC Interrupt Structure and 8259 DMA Controllers

PC Interrupt Structure and 8259 DMA Controllers ELEC 379 : DESIGN OF DIGITAL AND MICROCOMPUTER SYSTEMS 1998/99 WINTER SESSION, TERM 2 PC Interrupt Structure and 8259 DMA Controllers This lecture covers the use of interrupts and the vectored interrupt

More information

פסיקות מערכות ובקרים. Components of a simple PC. I/O Device Types Block Devices. Typical Data Rates מהירות טיפוסית נתונים

פסיקות מערכות ובקרים. Components of a simple PC. I/O Device Types Block Devices. Typical Data Rates מהירות טיפוסית נתונים מנהל התקנים DMA Introduction to Systems Programming מבוא לתכנות מערכות Device Manager גישה יש ירה לז י כר ו ן פסיקות קלט פלט Input-Output Devices, s, and I/O Architectures ניהול ציוד ה יקפי INTERRUPTS

More information

Chapter 12: Interrupts

Chapter 12: Interrupts Chapter 12: Interrupts Introduction In this chapter, the coverage of basic I/O and programmable peripheral interfaces is expanded by examining a technique called interrupt-processed I/O. An interrupt is

More information

7/19/2013. Introduction. Chapter Objectives Upon completion of this chapter, you will be able to: Chapter Objectives 12 1 BASIC INTERRUPT PROCESSING

7/19/2013. Introduction. Chapter Objectives Upon completion of this chapter, you will be able to: Chapter Objectives 12 1 BASIC INTERRUPT PROCESSING Chapter 12: Interrupts Introduction In this chapter, the coverage of basic I/O and programmable peripheral interfaces is expanded by examining a technique called interrupt-processed I/O. An interrupt is

More information

ECE 485/585 Microprocessor System Design

ECE 485/585 Microprocessor System Design Microprocessor System Design Lecture 3: Polling and Interrupts Programmed I/O and DMA Interrupts Zeshan Chishti Electrical and Computer Engineering Dept Maseeh College of Engineering and Computer Science

More information

Module 3. Embedded Systems I/O. Version 2 EE IIT, Kharagpur 1

Module 3. Embedded Systems I/O. Version 2 EE IIT, Kharagpur 1 Module 3 Embedded Systems I/O Version 2 EE IIT, Kharagpur 1 Lesson 15 Interrupts Version 2 EE IIT, Kharagpur 2 Instructional Objectives After going through this lesson the student would learn Interrupts

More information

Chapter 8 PC Peripheral Chips - Pt 3 Interrupts

Chapter 8 PC Peripheral Chips - Pt 3 Interrupts Chapter 8 PC Peripheral Chips - Pt 3 Interrupts PC Architecture for Technicians: Level-1 Systems Manufacturing Training and Employee Development Copyright 1996 Intel Corp. Ch 8 - Page 1 OBJECTIVES: AT

More information

Sender Receiver Sender

Sender Receiver Sender EEE 410 Microprocessors I Spring 04/05 Lecture Notes # 19 Outline of the Lecture Interfacing the Serial Port Basics of Serial Communication Asynchronous Data Communication and Data Framing RS232 and other

More information

An Interrupt is either a Hardware generated CALL (externally derived from a hardware signal)

An Interrupt is either a Hardware generated CALL (externally derived from a hardware signal) An Interrupt is either a Hardware generated CALL (externally derived from a hardware signal) OR A Software-generated CALL (internally derived from the execution of an instruction or by some other internal

More information

Week 11 Programmable Interrupt Controller

Week 11 Programmable Interrupt Controller Week 11 Programmable Interrupt Controller 8259 Programmable Interrupt Controller The 8259 programmable interrupt controller (PIC) adds eight vectored priority encoded interrupts to the microprocessor.

More information

The K Project. Interrupt and Exception Handling. LSE Team. May 14, 2018 EPITA. The K Project. LSE Team. Introduction. Interrupt Descriptor Table

The K Project. Interrupt and Exception Handling. LSE Team. May 14, 2018 EPITA. The K Project. LSE Team. Introduction. Interrupt Descriptor Table and Exception Handling EPITA May 14, 2018 (EPITA) May 14, 2018 1 / 37 and Exception Handling Exception : Synchronous with program execution (e.g. division by zero, accessing an invalid address) : Asynchronous

More information

An Interrupt is either a Hardware generated CALL (externally derived from a hardware signal)

An Interrupt is either a Hardware generated CALL (externally derived from a hardware signal) An Interrupt is either a Hardware generated CALL (externally derived from a hardware signal) OR A Software-generated CALL (internally derived from the execution of an instruction or by some other internal

More information

Interrupts. by Rahul Patel, Assistant Professor, EC Dept., Sankalchand Patel College of Engg.,Visnagar

Interrupts. by Rahul Patel, Assistant Professor, EC Dept., Sankalchand Patel College of Engg.,Visnagar Chapter 12 Interrupts by Rahul Patel, Assistant Professor, EC Dept., Sankalchand Patel College of Engg.,Visnagar Microprocessor & Interfacing (140701) Rahul Patel 1 Points to be Discussed 8085 Interrupts

More information

CS609 Final Term Solved MCQs with References Without Repetitions 14/02/2013

CS609 Final Term Solved MCQs with References Without Repetitions 14/02/2013 1 CS609 Final Term Solved MCQs with References Without Repetitions 14/02/2013 In BPB, root directory is saved in. (BIOS parameter block) Cluster#0 Cluster#1 (Ref) Cluster#2 Cluster#3 In NTFS, total sizes

More information

Interrupts. Chapter 20 S. Dandamudi. Outline. Exceptions

Interrupts. Chapter 20 S. Dandamudi. Outline. Exceptions Interrupts Chapter 20 S. Dandamudi Outline What are interrupts? Types of interrupts Software interrupts Hardware interrupts Exceptions Interrupt processing Protected mode Real mode Software interrupts

More information

Interrupt is a process where an external device can get the attention of the microprocessor. Interrupts can be classified into two types:

Interrupt is a process where an external device can get the attention of the microprocessor. Interrupts can be classified into two types: 8085 INTERRUPTS 1 INTERRUPTS Interrupt is a process where an external device can get the attention of the microprocessor. The process starts from the I/O device The process is asynchronous. Classification

More information

EEL 4744C: Microprocessor Applications. Lecture 7. Part 1. Interrupt. Dr. Tao Li 1

EEL 4744C: Microprocessor Applications. Lecture 7. Part 1. Interrupt. Dr. Tao Li 1 EEL 4744C: Microprocessor Applications Lecture 7 Part 1 Interrupt Dr. Tao Li 1 M&M: Chapter 8 Or Reading Assignment Software and Hardware Engineering (new version): Chapter 12 Dr. Tao Li 2 Interrupt An

More information

Reading Assignment. Interrupt. Interrupt. Interrupt. EEL 4744C: Microprocessor Applications. Lecture 7. Part 1

Reading Assignment. Interrupt. Interrupt. Interrupt. EEL 4744C: Microprocessor Applications. Lecture 7. Part 1 Reading Assignment EEL 4744C: Microprocessor Applications Lecture 7 M&M: Chapter 8 Or Software and Hardware Engineering (new version): Chapter 12 Part 1 Interrupt Dr. Tao Li 1 Dr. Tao Li 2 Interrupt An

More information

Systems Programming and Computer Architecture ( ) Timothy Roscoe

Systems Programming and Computer Architecture ( ) Timothy Roscoe Systems Group Department of Computer Science ETH Zürich Systems Programming and Computer Architecture (252-0061-00) Timothy Roscoe Herbstsemester 2016 AS 2016 Exceptions 1 17: Exceptions Computer Architecture

More information

EC2304-MICROPROCESSOR AND MICROCONROLLERS 2 marks questions and answers UNIT-I

EC2304-MICROPROCESSOR AND MICROCONROLLERS 2 marks questions and answers UNIT-I EC2304-MICROPROCESSOR AND MICROCONROLLERS 2 marks questions and answers 1. Define microprocessors? UNIT-I A semiconductor device(integrated circuit) manufactured by using the LSI technique. It includes

More information

Lecture 5: Computer Organization Instruction Execution. Computer Organization Block Diagram. Components. General Purpose Registers.

Lecture 5: Computer Organization Instruction Execution. Computer Organization Block Diagram. Components. General Purpose Registers. Lecture 5: Computer Organization Instruction Execution Computer Organization Addressing Buses Fetch-Execute Cycle Computer Organization CPU Control Unit U Input Output Memory Components Control Unit fetches

More information

Learn how to communicate

Learn how to communicate USART 1 Learn how to communicate Programmed I/O (Software Polling) Interrupt Driven I/O Direct Memory Access (DMA) 2 Programmed I/O (Polling) Processor must read and check I/O ready bits for proper value

More information

eaymanelshenawy.wordpress.com

eaymanelshenawy.wordpress.com Lectures on Memory Interface Designed and Presented by Dr. Ayman Elshenawy Elsefy Dept. of Systems & Computer Eng.. Al-Azhar University Email : eaymanelshenawy@yahoo.com eaymanelshenawy.wordpress.com Chapter

More information

CC411: Introduction To Microprocessors

CC411: Introduction To Microprocessors CC411: Introduction To Microprocessors OBJECTIVES this chapter enables the student to: Describe the Intel family of microprocessors from 8085 to Pentium. In terms of bus size, physical memory & special

More information

8085 Interrupts. Lecturer, CSE, AUST

8085 Interrupts. Lecturer, CSE, AUST 8085 Interrupts CSE 307 - Microprocessors Mohd. Moinul Hoque, 1 Interrupts Interrupt is a process where an external device can get the attention of the microprocessor. The process starts from the I/O device

More information

SRI VENKATESWARA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF ECE EC6504 MICROPROCESSOR AND MICROCONTROLLER (REGULATION 2013)

SRI VENKATESWARA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF ECE EC6504 MICROPROCESSOR AND MICROCONTROLLER (REGULATION 2013) SRI VENKATESWARA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF ECE EC6504 MICROPROCESSOR AND MICROCONTROLLER (REGULATION 2013) UNIT I THE 8086 MICROPROCESSOR PART A (2 MARKS) 1. What are the functional

More information

Northern India Engineering College, Delhi (GGSIP University) PAPER I

Northern India Engineering College, Delhi (GGSIP University) PAPER I PAPER I Q1.Explain IVT? ANS. interrupt vector table is a memory space for storing starting addresses of all the interrupt service routine. It stores CS:IP PAIR corresponding to each ISR. An interrupt vector

More information

Serial I-O for Dinesh K. Sharma Electrical Engineering Department I.I.T. Bombay Mumbai (version 14/10/07)

Serial I-O for Dinesh K. Sharma Electrical Engineering Department I.I.T. Bombay Mumbai (version 14/10/07) Serial I-O for 8051 Dinesh K. Sharma Electrical Engineering Department I.I.T. Bombay Mumbai 400 076 (version 14/10/07) 1 Motivation Serial communications means sending data a single bit at a time. But

More information

BASIC INTERRUPT PROCESSING

BASIC INTERRUPT PROCESSING Interrupts BASIC INTERRUPT PROCESSING This section discusses the function of an interrupt in a microprocessor-based system. Structure and features of interrupts available to Intel microprocessors. The

More information

Homework / Exam. Return and Review Exam #1 Reading. Machine Projects. Labs. S&S Extracts , PIC Data Sheet. Start on mp3 (Due Class 19)

Homework / Exam. Return and Review Exam #1 Reading. Machine Projects. Labs. S&S Extracts , PIC Data Sheet. Start on mp3 (Due Class 19) Homework / Exam Return and Review Exam #1 Reading S&S Extracts 385-393, PIC Data Sheet Machine Projects Start on mp3 (Due Class 19) Labs Continue in labs with your assigned section 1 Interrupts An interrupt

More information

Question Bank Microprocessor and Microcontroller

Question Bank Microprocessor and Microcontroller QUESTION BANK - 2 PART A 1. What is cycle stealing? (K1-CO3) During any given bus cycle, one of the system components connected to the system bus is given control of the bus. This component is said to

More information

Microprocessors & Interfacing

Microprocessors & Interfacing Lecture Overview Microprocessors & Interfacing Interrupts (I) Lecturer : Dr. Annie Guo Introduction to Interrupts Interrupt system specifications Multiple sources of interrupts Interrupt priorities Interrupts

More information

Interrupts (I) Lecturer: Sri Notes by Annie Guo. Week8 1

Interrupts (I) Lecturer: Sri Notes by Annie Guo. Week8 1 Interrupts (I) Lecturer: Sri Notes by Annie Guo Week8 1 Lecture overview Introduction to Interrupts Interrupt system specifications Multiple Sources of Interrupts Interrupt Priorities Interrupts in AVR

More information

The control of I/O devices is a major concern for OS designers

The control of I/O devices is a major concern for OS designers Lecture Overview I/O devices I/O hardware Interrupts Direct memory access Device dimensions Device drivers Kernel I/O subsystem Operating Systems - June 26, 2001 I/O Device Issues The control of I/O devices

More information

EC6504 MICROPROCESSOR AND MICROCONTROLLER

EC6504 MICROPROCESSOR AND MICROCONTROLLER UNIT I THE 8086 MICROPROCESSOR 1. What do you mean by Addressing modes? (May/June 2014) The different ways that a microprocessor can access data are referred to as addressing modes. 2. What is meant by

More information

UMBC. contain new IP while 4th and 5th bytes contain CS. CALL BX and CALL [BX] versions also exist. contain displacement added to IP.

UMBC. contain new IP while 4th and 5th bytes contain CS. CALL BX and CALL [BX] versions also exist. contain displacement added to IP. Procedures: CALL: Pushes the address of the instruction following the CALL instruction onto the stack. RET: Pops the address. SUM PROC NEAR USES BX CX DX ADD AX, BX ADD AX, CX MOV AX, DX RET SUM ENDP NEAR

More information

Chapter 2 COMPUTER SYSTEM HARDWARE

Chapter 2 COMPUTER SYSTEM HARDWARE Chapter 2 COMPUTER SYSTEM HARDWARE A digital computer system consists of hardware and software. The hardware consists of the physical components of the system, whereas the software is the collection of

More information

MICROPROCESSOR TECHNOLOGY

MICROPROCESSOR TECHNOLOGY MICROPROCESSOR TECHNOLOGY Assis. Prof. Hossam El-Din Moustafa Lecture 13 Ch.6 The 80186, 80188, and 80286 Microprocessors 21-Apr-15 1 Chapter Objectives Describe the hardware and software enhancements

More information

1 MALP ( ) Unit-1. (1) Draw and explain the internal architecture of 8085.

1 MALP ( ) Unit-1. (1) Draw and explain the internal architecture of 8085. (1) Draw and explain the internal architecture of 8085. The architecture of 8085 Microprocessor is shown in figure given below. The internal architecture of 8085 includes following section ALU-Arithmetic

More information

UNIT-IV. The semiconductor memories are organized as two-dimensional arrays of memory locations.

UNIT-IV. The semiconductor memories are organized as two-dimensional arrays of memory locations. UNIT-IV MEMORY INTERFACING WITH 8086: The semi conductor memories are of two types: Static RAM Dynamic RAM The semiconductor memories are organized as two-dimensional arrays of memory locations. For Ex:

More information

For more notes of DAE

For more notes of DAE Created by ARSLAN AHMED SHAAD ( 1163135 ) AND MUHMMAD BILAL ( 1163122 ) VISIT : www.vbforstudent.com Also visit : www.techo786.wordpress.com For more notes of DAE CHAPTER # 8 INTERRUPTS COURSE OUTLINE

More information

MCS-51 Serial Port A T 8 9 C 5 2 1

MCS-51 Serial Port A T 8 9 C 5 2 1 MCS-51 Serial Port AT89C52 1 Introduction to Serial Communications Serial vs. Parallel transfer of data Simplex, Duplex and half-duplex modes Synchronous, Asynchronous UART Universal Asynchronous Receiver/Transmitter.

More information

Serial Interfacing. Asynchronous Frame

Serial Interfacing. Asynchronous Frame Serial Interfacing Serial Data Transfer used by keyboards, plotters, modems and other peripherals with low data transfer rates (low bandwidth) 2 Types: Asynchronous CPU and device are not using a common

More information

Troubleshooting & Repair

Troubleshooting & Repair Chapter Troubleshooting & Repair 6.1 Introduction This chapter provides the most common problem encountered with the M785 notebook computer and some troubleshooting means. Some of the common problems are:

More information

Interrupt/Timer/DMA 1

Interrupt/Timer/DMA 1 Interrupt/Timer/DMA 1 Exception An exception is any condition that needs to halt normal execution of the instructions Examples - Reset - HWI - SWI 2 Interrupt Hardware interrupt Software interrupt Trap

More information

Operating Systems 2010/2011

Operating Systems 2010/2011 Operating Systems 2010/2011 Input/Output Systems part 1 (ch13) Shudong Chen 1 Objectives Discuss the principles of I/O hardware and its complexity Explore the structure of an operating system s I/O subsystem

More information

Vidyalankar. Vidyalankar T.E. Sem. V [CMPN] Microprocessors Prelim Question Paper Solution. 1. (a)

Vidyalankar. Vidyalankar T.E. Sem. V [CMPN] Microprocessors Prelim Question Paper Solution. 1. (a) 1. (a) Step 1 : Total EPROM required Chip size available No.of chips required = 2 T.E. Sem. V [CMPN] Microprocessors Prelim Question Paper Solution = 64 KB = 32 KB No.of sets required = 2 1 2 Set 1 = Ending

More information

VARDHAMAN COLLEGE OF ENGINEERING (AUTONOMOUS) Shamshabad, Hyderabad

VARDHAMAN COLLEGE OF ENGINEERING (AUTONOMOUS) Shamshabad, Hyderabad Introduction to MS-DOS Debugger DEBUG In this laboratory, we will use DEBUG program and learn how to: 1. Examine and modify the contents of the 8086 s internal registers, and dedicated parts of the memory

More information

9/25/ Software & Hardware Architecture

9/25/ Software & Hardware Architecture 8086 Software & Hardware Architecture 1 INTRODUCTION It is a multipurpose programmable clock drive register based integrated electronic device, that reads binary instructions from a storage device called

More information

EEE3410 Microcontroller Applications Department of Electrical Engineering Lecture 4 The 8051 Architecture

EEE3410 Microcontroller Applications Department of Electrical Engineering Lecture 4 The 8051 Architecture Department of Electrical Engineering Lecture 4 The 8051 Architecture 1 In this Lecture Overview General physical & operational features Block diagram Pin assignments Logic symbol Hardware description Pin

More information

Phoenix Technologies, Ltd.

Phoenix Technologies, Ltd. Phoenix Technologies, Ltd. AwardBIOS Version 4.51PG Post Codes & Error Messages Table of Contents POST Codes - 2 Error Messages - 7 ----------------------------------------------- Proprietary Notice and

More information

+ Overview. Projects: Developing an OS Kernel for x86. ! Handling Intel Processor Exceptions: the Interrupt Descriptor Table (IDT)

+ Overview. Projects: Developing an OS Kernel for x86. ! Handling Intel Processor Exceptions: the Interrupt Descriptor Table (IDT) + Projects: Developing an OS Kernel for x86 Low-Level x86 Programming: Exceptions, Interrupts, and Timers + Overview! Handling Intel Processor Exceptions: the Interrupt Descriptor Table (IDT)! Handling

More information

Control Unit: The control unit provides the necessary timing and control Microprocessor resembles a CPU exactly.

Control Unit: The control unit provides the necessary timing and control Microprocessor resembles a CPU exactly. Unit I 8085 and 8086 PROCESSOR Introduction to microprocessor A microprocessor is a clock-driven semiconductor device consisting of electronic logic circuits manufactured by using either a large-scale

More information

UNIT II OVERVIEW MICROPROCESSORS AND MICROCONTROLLERS MATERIAL. Introduction to 8086 microprocessors. Architecture of 8086 processors

UNIT II OVERVIEW MICROPROCESSORS AND MICROCONTROLLERS MATERIAL. Introduction to 8086 microprocessors. Architecture of 8086 processors OVERVIEW UNIT II Introduction to 8086 microprocessors Architecture of 8086 processors Register Organization of 8086 Memory Segmentation of 8086 Pin Diagram of 8086 Timing Diagrams for 8086 Interrupts of

More information

Lab 2: 80x86 Interrupts

Lab 2: 80x86 Interrupts ELEC-4601: Microprocessor Systems The Point Lab 2: 80x86 Interrupts Writing software to properly respond to a hardware interrupt is fussy. There is a hardware path from the incoming interrupt signal all

More information

Programming the 8259 PIC: A Tech-Tip Example and Boilerplate

Programming the 8259 PIC: A Tech-Tip Example and Boilerplate Programming the 8259 PIC: A Tech-Tip Example and Boilerplate Thomas W. Associate Professor, New Mexico State University, Department of Engineering Technology PO Box 3001, MSC 3566, Las Cruces, NM 88003-8001,

More information

MP Assignment III. 1. An 8255A installed in a system has system base address E0D0H.

MP Assignment III. 1. An 8255A installed in a system has system base address E0D0H. MP Assignment III 1. An 8255A installed in a system has system base address E0D0H. i) Calculate the system addresses for the three ports and control register for this 8255A. System base address = E0D0H

More information

8051SERIAL PORT PROGRAMMING

8051SERIAL PORT PROGRAMMING 8051SERIAL PORT PROGRAMMING Basics of Serial Communication Computers transfer data in two ways: Parallel Often 8 or more lines (wire conductors) are used to transfer data to a device that is only a few

More information

Chapter 11: Input/Output Organisation. Lesson 05: Asynchronous RS232C Serial Port data transfer

Chapter 11: Input/Output Organisation. Lesson 05: Asynchronous RS232C Serial Port data transfer Chapter 11: Input/Output Organisation Lesson 05: Asynchronous RS232C Serial Port data transfer Objective Understand the RS232C asynchronous data transfer and signals Learn the RS232C serial port communication

More information

Description of the Simulator

Description of the Simulator Description of the Simulator The simulator includes a small sub-set of the full instruction set normally found with this style of processor. It includes advanced instructions such as CALL, RET, INT and

More information

Digital System Design

Digital System Design Digital System Design by Dr. Lesley Shannon Email: lshannon@ensc.sfu.ca Course Website: http://www.ensc.sfu.ca/~lshannon/courses/ensc350 Simon Fraser University i Slide Set: 15 Date: March 30, 2009 Slide

More information

Question Bank Part-A UNIT I- THE 8086 MICROPROCESSOR 1. What is microprocessor? A microprocessor is a multipurpose, programmable, clock-driven, register-based electronic device that reads binary information

More information

S.R.M. INSTITUTE OF SCIENCE & TECHNOLOGY SCHOOL OF ELECTRONICS & COMMUNICATION ENGINEERING

S.R.M. INSTITUTE OF SCIENCE & TECHNOLOGY SCHOOL OF ELECTRONICS & COMMUNICATION ENGINEERING S.R.M. INSTITUTE OF SCIENCE & TECHNOLOGY SCHOOL OF ELECTRONICS & COMMUNICATION ENGINEERING QUESTION BANK Subject Code : EC307 Subject Name : Microprocessor and Interfacing Year & Sem : III Year, V Sem

More information

UNIT II SYSTEM BUS STRUCTURE 1. Differentiate between minimum and maximum mode 2. Give any four pin definitions for the minimum mode. 3. What are the pins that are used to indicate the type of transfer

More information

8086 INTERNAL ARCHITECTURE

8086 INTERNAL ARCHITECTURE 8086 INTERNAL ARCHITECTURE Segment 2 Intel 8086 Microprocessor The 8086 CPU is divided into two independent functional parts: a) The Bus interface unit (BIU) b) Execution Unit (EU) Dividing the work between

More information

FIFTH SEMESTER B.TECH DEGREE EXAMINATION MODEL TEST QUESTION PAPER, NOVEMBER CS 305: Microprocessor and Microcontrollers PART A

FIFTH SEMESTER B.TECH DEGREE EXAMINATION MODEL TEST QUESTION PAPER, NOVEMBER CS 305: Microprocessor and Microcontrollers PART A Reg No Name FIFTH SEMESTER B.TECH DEGREE EXAMINATION MODEL TEST QUESTION PAPER, NOVEMBER 2017 CS 305: Microprocessor and Microcontrollers Max. Marks: 100 Duration: 3 Hours PART A Answer all questions.

More information

INTERRUPTS in microprocessor systems

INTERRUPTS in microprocessor systems INTERRUPTS in microprocessor systems Microcontroller Power Supply clock fx (Central Proccesor Unit) CPU Reset Hardware Interrupts system IRQ Internal address bus Internal data bus Internal control bus

More information

Come and join us at WebLyceum

Come and join us at WebLyceum Come and join us at WebLyceum For Past Papers, Quiz, Assignments, GDBs, Video Lectures etc Go to http://www.weblyceum.com and click Register In Case of any Problem Contact Administrators Rana Muhammad

More information

CHAPTER ASSEMBLY LANGUAGE PROGRAMMING

CHAPTER ASSEMBLY LANGUAGE PROGRAMMING CHAPTER 2 8051 ASSEMBLY LANGUAGE PROGRAMMING Registers Register are used to store information temporarily: A byte of data to be processed An address pointing to the data to be fetched The vast majority

More information

EC-333 Microprocessor and Interfacing Techniques

EC-333 Microprocessor and Interfacing Techniques EC-333 Microprocessor and Interfacing Techniques Lecture 3 The Microprocessor and its Architecture Dr Hashim Ali Fall - 2018 Department of Computer Science and Engineering HITEC University Taxila Slides

More information

CHAPTER 5 : Introduction to Intel 8085 Microprocessor Hardware BENG 2223 MICROPROCESSOR TECHNOLOGY

CHAPTER 5 : Introduction to Intel 8085 Microprocessor Hardware BENG 2223 MICROPROCESSOR TECHNOLOGY CHAPTER 5 : Introduction to Intel 8085 Hardware BENG 2223 MICROPROCESSOR TECHNOLOGY The 8085A(commonly known as the 8085) : Was first introduced in March 1976 is an 8-bit microprocessor with 16-bit address

More information

MLR INSTITUTE OF TECHNOLOGY DUNDIGAL , HYDERABAD

MLR INSTITUTE OF TECHNOLOGY DUNDIGAL , HYDERABAD Name Code : 56012 Class Branch MR INSTITUTE OF TECHNOOGY DUNDIGA - 500 043, HYDERABAD EECTRONICS AND COMMUNICATION ENGINEERING ASSIGNMENT QUESTIONS : MICROPROCESSORS AND MICROCONTROERS : III - B. Tech

More information

INPUT/OUTPUT ORGANIZATION

INPUT/OUTPUT ORGANIZATION INPUT/OUTPUT ORGANIZATION Accessing I/O Devices I/O interface Input/output mechanism Memory-mapped I/O Programmed I/O Interrupts Direct Memory Access Buses Synchronous Bus Asynchronous Bus I/O in CO and

More information

Understanding the Interrupt Control Unit of the 80C186EC/80C188EC Processor

Understanding the Interrupt Control Unit of the 80C186EC/80C188EC Processor A AP-731 APPLICATION NOTE Understanding the Interrupt Control Unit of the 80C186EC/80C188EC Processor Sean Kohler Application Engineer Intel Corporation 5000 West Chandler Boulevard Chandler, AZ 85226

More information

The x86 Microprocessors. Introduction. The 80x86 Microprocessors. 1.1 Assembly Language

The x86 Microprocessors. Introduction. The 80x86 Microprocessors. 1.1 Assembly Language The x86 Microprocessors Introduction 1.1 Assembly Language Numbering and Coding Systems Human beings use the decimal system (base 10) Decimal digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Computer systems use the

More information

Microprocessor Architecture

Microprocessor Architecture Microprocessor - 8085 Architecture 8085 is pronounced as "eighty-eighty-five" microprocessor. It is an 8-bit microprocessor designed by Intel in 1977 using NMOS technology. It has the following configuration

More information

QUESTION BANK CS2252 MICROPROCESSOR AND MICROCONTROLLERS

QUESTION BANK CS2252 MICROPROCESSOR AND MICROCONTROLLERS FATIMA MICHAEL COLLEGE OF ENGINEERING & TECHNOLOGY Senkottai Village, Madurai Sivagangai Main Road, Madurai -625 020 QUESTION BANK CS2252 MICROPROCESSOR AND MICROCONTROLLERS UNIT 1 - THE 8085 AND 8086

More information

COSC 243. Input / Output. Lecture 13 Input/Output. COSC 243 (Computer Architecture)

COSC 243. Input / Output. Lecture 13 Input/Output. COSC 243 (Computer Architecture) COSC 243 Input / Output 1 Introduction This Lecture Source: Chapter 7 (10 th edition) Next Lecture (until end of semester) Zhiyi Huang on Operating Systems 2 Memory RAM Random Access Memory Read / write

More information

2. List the five interrupt pins available in INTR, TRAP, RST 7.5, RST 6.5, RST 5.5.

2. List the five interrupt pins available in INTR, TRAP, RST 7.5, RST 6.5, RST 5.5. DHANALAKSHMI COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING EE6502- MICROPROCESSORS AND MICROCONTROLLERS UNIT I: 8085 PROCESSOR PART A 1. What is the need for ALE signal in

More information

16-bit MS-DOS and BIOS Programming

16-bit MS-DOS and BIOS Programming CS2422 Assem bly Language and System Programming 16-bit MS-DOS and BIOS Programming Department of Computer Science National Tsing Hua University Overview Chapter 13: 16-bit MS-DOS Programming MS-DOS and

More information

Topics. Interfacing chips

Topics. Interfacing chips 8086 Interfacing ICs 2 Topics Interfacing chips Programmable Communication Interface PCI (8251) Programmable Interval Timer (8253) Programmable Peripheral Interfacing - PPI (8255) Programmable DMA controller

More information

Overview of Intel 80x86 µp

Overview of Intel 80x86 µp CE444 ١ ٢ 8088/808 µp and Supporting Chips Overview of Intel 80x8 µp ٢ ١ 8088/808 µp ٣ Both are mostly the same with small differences. Both are of bit internal Data bus Both have 0 bit address bus Capable

More information

Hierarchy of I/O Control Devices

Hierarchy of I/O Control Devices Hierarchy of I/O Control Devices 8155 I/O + Timer 2 Port (A,B), No Bidirectional HS mode (C) 4 mode timer 8253/54 Timer 6 mode timer 8255 I/O 2 Port (A,B) A is Bidirectional HS mode (C) Extra controls

More information

MICROPROCESSOR AND MICROCONTROLLER BASED SYSTEMS

MICROPROCESSOR AND MICROCONTROLLER BASED SYSTEMS MICROPROCESSOR AND MICROCONTROLLER BASED SYSTEMS UNIT I INTRODUCTION TO 8085 8085 Microprocessor - Architecture and its operation, Concept of instruction execution and timing diagrams, fundamentals of

More information

2.5 Address Space. The IBM 6x86 CPU can directly address 64 KBytes of I/O space and 4 GBytes of physical memory (Figure 2-24).

2.5 Address Space. The IBM 6x86 CPU can directly address 64 KBytes of I/O space and 4 GBytes of physical memory (Figure 2-24). Address Space 2.5 Address Space The IBM 6x86 CPU can directly address 64 KBytes of I/O space and 4 GBytes of physical memory (Figure 2-24). Memory Address Space. Access can be made to memory addresses

More information

Interrupt Services. Which Way is Best? Characteristics. Direct in, out. BIOS Average Average DOS Most Least

Interrupt Services. Which Way is Best? Characteristics. Direct in, out. BIOS Average Average DOS Most Least Interrupt Services Application Programs/OS Shell (command.com) int 10h, and others int 21h, and others (IO.SYS) DOS Services (msdos.sys) BIOS (EEPROM) Hardware (x86, Chipset and Peripherals) BIOS - Basic

More information

SRI VIDYA COLLEGE OF ENGINEERING AND TECHNOLOGY,VIRUDHUNAGAR

SRI VIDYA COLLEGE OF ENGINEERING AND TECHNOLOGY,VIRUDHUNAGAR Year/sem: 02/04 Academic Year: 2014-2015 (even) UNIT II THE 8086 SYSTEM BUS STRUCTURE PART A 1. What are the three groups of signals in 8086? The 8086 signals are categorized in three groups. They are:

More information

4) In response to the the 8259A sets the highest priority ISR, bit and reset the corresponding IRR bit. The 8259A also places

4) In response to the the 8259A sets the highest priority ISR, bit and reset the corresponding IRR bit. The 8259A also places Lecture-52 Interrupt sequence: The powerful features of the 8259A in a system are its programmability and the interrupt routine address capability. It allows direct or indirect jumping to the specific

More information

Lecture 13: I/O I/O. Interrupts. How?

Lecture 13: I/O I/O. Interrupts. How? Lecture 13: I/O I/O Interrupts MS-DOS Function Calls Input,Output, File I/O Video Keyboard Getting data into your program: define it in the data area use immediate operands Very limiting Most programs

More information

DVD :50 PM Page 1 BIOS

DVD :50 PM Page 1 BIOS 99 0789729741 DVD 3.07 06 09 2003 1:50 PM Page 1 BIOS 99 0789729741 DVD 3.07 06 09 2003 1:50 PM Page 2 2 BIOS AMI BIOS POST Checkpoint Codes Table 1 AMI BIOS POST Checkpoint Codes for All AMI BIOS Products

More information

a16450 Features General Description Universal Asynchronous Receiver/Transmitter

a16450 Features General Description Universal Asynchronous Receiver/Transmitter a16450 Universal Asynchronous Receiver/Transmitter September 1996, ver. 1 Data Sheet Features a16450 MegaCore function implementing a universal asynchronous receiver/transmitter (UART) Optimized for FLEX

More information

e-pg Pathshala Subject : Computer Science Paper: Embedded System Module: Serial Port Communication Module No: CS/ES/11 Quadrant 1 e-text

e-pg Pathshala Subject : Computer Science Paper: Embedded System Module: Serial Port Communication Module No: CS/ES/11 Quadrant 1 e-text e-pg Pathshala Subject : Computer Science Paper: Embedded System Module: Serial Port Communication Module No: CS/ES/11 Quadrant 1 e-text In this lecture, serial port communication will be discussed in

More information

1. What is Microprocessor? Give the power supply & clock frequency of 8085?

1. What is Microprocessor? Give the power supply & clock frequency of 8085? 1. What is Microprocessor? Give the power supply & clock frequency of 8085? A microprocessor is a multipurpose, programmable logic device that reads binary instructions from a storage device called memory

More information

=0 Read/Write IER Interrupt Enable Register =1 Read/Write - Divisor Latch High Byte + 2

=0 Read/Write IER Interrupt Enable Register =1 Read/Write - Divisor Latch High Byte + 2 EEE 410 Microprocessors I Spring 04/05 Lecture Notes # 20 Outline of the Lecture Interfacing the Serial Port Serial Port registers Transmitting Serial Data Receiving Serial Data INTERFACING THE SERIAL

More information

Types of Interrupts:

Types of Interrupts: Interrupt structure Introduction Interrupt is signals send by an external device to the processor, to request the processor to perform a particular task or work. Mainly in the microprocessor based system

More information